The invention is related to Internet Protocol (IP) telephony systems. More specifically, the invention is related to systems and methods for modifying data packets that carry the media of IP telephony communications to prevent an Internet Service Provider (ISP) from throttling, blocking or otherwise interfering with transmission of the data packets. The same or similar techniques could be used to prevent interference with data packets that are specifically formatted for other purposes.
Existing IP telephony systems allow users to place and receive telephone calls and to send and/or receive other types of communications, such as text messages, SMS messages, MMS messages and the like. The communications are transmitted, at least in part, by data packets that traverse a private and/or public data network.
When an IP telephony communication is to be established with an IP telephony device, a stream of data packets bearing setup signaling is first communicated with the IP telephony device. Once the setup signaling is complete, data packets bearing the media of the telephony communication pass back and forth to the IP telephony device. The data packets that bear the media of the telephony communication may pass over a different path than the data packets bearing the setup signaling.
Data packets bearing the media of a telephony communication frequently traverse public data networks, such as the Internet. This typically means that an Internet service provider (ISP) is responsible for transmitting the data packets along at least a part of the path to and from the IP telephony device.
Because IP telephony communications can require significant amounts of bandwidth, some ISPs attempt to identify and then throttle data streams which carry IP telephony communications. Doing so can help them to conserve their available bandwidth to ensure that all customers receive service. However, when the data packets bearing the media of an IP telephony communication are throttled, it can adversely impact the quality of the communication. In some instances, throttling the data stream bearing the media of an IP telephony communication can cause the communication to fail completely.
ISPs can identify a stream of data packets bearing the media of an IP telephony communication in multiple different ways. In some instances, the ISP can perform an inspection of the contents of the data packets to determine if the data packets conform to a typical format used for IP telephony communications. This can include examining the data in the header of a data packet to see if the header is formatted like a typical data packet used to carry the media of an IP telephony communication.
In other instances, an ISP can determine the originating and/or destination IP addresses of data packets, and those IP addresses can be compared to the IP addresses of known IP telephony system assets. If a stream of data packets is being sent to or being received from a server or gateway maintained by an IP telephony system, the ISP can identify the stream of data packets as likely carrying the media of an IP telephony communication.
An ISP can also check a stream of data packets to determine if the stream has characteristics which conform to typical IP telephony communications. This can include examining the size of the individual data packets to determine if the data packets have a size that is typically used to carry the media of an IP telephony communication. This can also include examining the data transfer rate of the stream to determine if the data transfer rate appears to conform to a typical standard used for the media of IP telephony communications. Other similar profiling techniques can also be used to identify a stream of data packets as potentially carrying the media of an IP telephony communication.
What is needed are systems and methods that prevent an ISP from identifying a stream of data packets as potentially carrying the media of an IP telephony communication so that the ISP cannot throttle such data streams. Preventing the ISPs from throttling data streams carrying the media of IP telephony communications helps to ensure that the communications will not fail, and helps to ensure that the quality of those communications will remain high.